草庐IT

JavaScript key 处理和浏览器兼容性

全部标签

javascript - node.js中处理 `exports`的建议

理论:node.js吸引我的地方之一是将它用作命令行工具。理论上,我可以用Javascript编写库并将它们放在我的~/.node_libraries目录中,然后我可以重用这些库。例如,我在~/.node_libraries中有一个text.js,它有一堆我反复使用的与文本相关的函数(depunctuate()、tokenize_text()之类的东西)。这样做的好处是我可以在我的命令行脚本和服务器端使用相同的text.js文件。现在我正在使用Python进行所有文本处理工作,但我只想坚持使用一种语言。练习:AFAICT,为了创建一个node.js模块,我必须将我想要的所有内容附加到e

javascript - 跨浏览器另存为.txt

是否有允许将字符串保存为txt文件并跨浏览器工作的JavaScript库?过去,我一直在使用Downloadify,但出于以下几个原因,我正在考虑另一种选择:我希望找到一个纯JavaScript的解决方案,而不需要Flash似乎Downloadify不再更新了(过去18个月没有更新)我在IE9中遇到Downloadify问题,字符串被chop 最佳答案 Hereis你需要什么。但它还不是跨浏览器。适用于谷歌浏览器。Downloadready维基百科也有很好的articleaboutDataURI

javascript - 如何在浏览器中同步 ajax 调用期间显示等待消息

如何在浏览器同步ajax调用时显示等待消息?我尝试了下面的代码,关闭了网络服务器,但没有显示“正在保存”消息。一段时间后,只有来自ajax调用的错误事件发生,没有任何进度消息。如果正在进行同步ajax调用,如何向用户显示等待消息?varmyInfo=''+''+' '+'Saving '+''$('#_info').html(myInfo);$('#_info').show();$.ajax('save',{async:false,type:'POST'}); 最佳答案 您的问题是您使用的是同步AJAX调用,这几

javascript - 检测浏览器是否支持 contentEditable?

有thisquestion,但发布的解决方案是浏览器嗅探,我试图避免这种情况。我需要让我的网站与iPad兼容,也许还有更新的Android设备。我一直在为我的WYSIWYG编辑器使用旧版本的FCKEditor(现在是CKEditor),但这在移动设备上不起作用,所以我想将它换成带有markdown之类的简单文本区域(如果不支持的话).据说它不会工作,因为移动设备往往不支持此contentEditable属性,这意味着当您单击它时屏幕键盘不会弹出。如何检测浏览器是否支持contentEditable?有人建议我只用mydiv.contentElement===undefined之类的东西

Javascript/jQuery 仅在浏览器后退/前进按钮单击时检测哈希更改

是否可以仅在浏览器历史记录更改(即后退或前进按钮)时检测哈希更改?我已经看到了onBeforeUnload事件,但是这个事件不会在哈希更改时触发,因为窗口没有卸载。hashchange事件显然会在哈希更改时触发。任何修复?最好不用插件。我看过jQuery历史插件,但我正在寻找最简单的解决方案。感谢您的帮助。 最佳答案 我最终在触发导航时标记了一个标志,如果标记了标志,hashChange事件将忽略它,否则它会像处理后退/前进事件一样处理它。 关于Javascript/jQuery仅在浏览

Javascript - 范围问题和将参数传递给动态创建的事件处理程序

在下面的代码中,您将看到我正在尝试为image.onclick定义一个事件处理程序,它需要额外的参数,我在while循环中声明了这些参数,希望javascript以这种方式定义范围,但事实并非如此。基本上这里的所有事件处理程序都在获取我赋予变量id和section_id的最后一个值。关于如何处理我想动态生成这些处理程序的情况有什么想法吗?functionhandlePicturesResult(){if(req.readyState==4){//Completeif(req.status==200){//OKresponsevarel=document.getElementById('

javascript - 在 Handlebars 模板中处理多行字符串

从我的服务器返回的JSON响应包含一个长字符串(消息正文或多行注释)。典型的message.body可能看起来像这样:"Hi!\r\n\r\nHow'slife?Everythingiswellwithme\r\n\r\nSincerely,\r\n\r\nAustin\r\n"现在使用Handlebars,我是这样嵌入的{{body}}但是,这在html中呈现为:"Hi!How'slife?EverythingiswellwithmeSincerely,Austin"我怎样才能让它在它自己的html段落[p]标记中呈现每一行?在rails中,我会用这样的东西(在haml中)来做到这一

javascript - 加载选择元素时的 JQuery 事件处理程序

当DOMselect元素完成加载时,是否有一个事件处理程序可以在JQuery中使用?这就是我想要实现的。它正在处理除“加载”之外的其他事件。这段代码在head中加载。$(document).on('load','select',function(){varcurrentSelectVal=$(this).val();alert(currentSelectVal);});这个问题之前形成的很糟糕。我需要将事件处理程序附加到所有select元素,这两个元素在加载文档时出现并在以后动态创建。它们从JQueryPost加载到php页面。类似这样:$.post("./user_functions

JavaScript 警报卡住 iOS 浏览器

我在jquery-mobile中开发webapp时遇到了一些奇怪的错误。当我提示警报时,如果我触摸页面的某些输入,iOSSafari和Chrome将完全卡住,我只能使用任务管理器关闭它们。我很困惑是苹果的错还是我的错。一些代码:$('.checkout-comprar-button').click(function(){alert("hola!!!");});这是事件的div:这是输入之一:"name=""id="checkout-num-tarjeta"maxlength="30"/>显示警报后,如果我想聚焦某些输入,浏览器会卡住。当我强行关闭Safari时,这是控制台给我的消息::

javascript - 多个处理程序附加到一个事件 : How to detach only one?

在我正在处理的这个模块中,我有一个监听窗口中的“调整大小”事件的监听器。每次运行模块时,我都需要检查是否已经有一个监听器注册到该事件并将其分离,以避免不必要的行为、内存泄漏等。到目前为止一切顺利,但是,在我们正在处理的这个应用程序中,有可能一些处理程序已经附加到“调整大小”事件,我无法调用$(window).off('resize'),因为这会刷新之前由其他插件或模块注册的所有其他事件处理程序。话虽如此,我想知道是否有一种方法可以识别我的处理程序并仅分离我自己注册的内容。如何为我的事件处理程序设置标识符以便在.off()函数中引用?任何帮助都会很好。 最佳答